/**
 * 用户管理相关API
 */
import request from '@/utils/request';

/**
 * 注册用户
 * @param {Object} data 用户数据
 * @param {string} data.username 用户名
 * @param {string} data.nickname 昵称
 * @param {string} data.mobile 手机号
 * @param {string} data.email 邮箱
 * @param {string} data.password 密码
 * @returns {Promise} 注册请求
 */
export const registerUser = (data) => {
    return request.post('/api/account/register', data);
};

/**
 * 更新用户信息
 * @param {Object} data 用户数据
 * @returns {Promise} 更新请求
 */
export const updateUser = (data) => {
    return request.put(`/api/user/${data.id}`, data);
};

/**
 * 删除用户
 * @param {number} id 用户ID
 * @returns {Promise} 删除请求
 */
export const deleteUser = (id) => {
    return request.delete(`/api/user/${id}`);
};

/**
 * 重置用户密码
 * @param {Object} data 重置密码数据
 * @returns {Promise} 重置密码请求
 */
export const resetPassword = (data) => {
    return request.post('/api/user/admin/reset-password', data);
};

/**
 * 获取用户列表
 * @param {Object} params 查询参数
 * @param {number} params.current 当前页码
 * @param {number} params.pageSize 每页大小
 * @param {string} [params.keyword] 搜索关键词
 * @returns {Promise} 用户列表
 */
export const getUserList = (params) => {
    return request.get('/api/user/page', {
        current: params.current,
        pageSize: params.pageSize,
        keyword: params.keyword
    });
};

/**
 * 获取用户详情
 * @param {number} id 用户ID
 * @returns {Promise} 用户详情
 */
export const getUserDetail = (id) => {
    return request.get(`/api/user/${id}`);
};

export default {
    registerUser,
    updateUser,
    deleteUser,
    resetPassword,
    getUserList,
    getUserDetail
}; 